As is known, by now all computer systems and other electronic apparatuses equipped with graphic interface are provided with pointing devices, which enable the user to interact in an extremely simple and intuitive way. The most widespread pointing device, namely, the mouse, is provided with a shell, wherein a motion transducer is housed. The shell is gripped and translated by the user, generally along a horizontal sliding surface, and the motion transducer sends signals indicating the path followed by the mouse to the computer system. The signals are then processed by the computer system for updating the position of a cursor displayed by the graphic interface. Normally, the mouse is also equipped with a number of pushbuttons, which the user can use for issuing further commands to the computer system.
As regards the motion transducer, several solutions have been proposed. The most-common envisages the use of a small and rather heavy ball, trapped within the shell and projecting from the bottom part thereof so as to rest on the sliding surface. The ball is coupled to two mutually perpendicular spindles or rollers, mounted on which are respective sensors of rotation (encoders). During the mouse motion, the ball rotates and transmits the rotation to the rollers by friction. The rotation is detected by the encoders and then used for calculating the translation of the mouse.
However, this solution is not reliable and is rather complex. In fact, if the ball is not perfectly mechanically coupled to the sliding surface and to the rollers, relative sliding, that prevents precise detection of the of the mouse motion, may occur. In an attempt to prevent relative sliding, the ball is usually made of a material having a high friction coefficient and is forced against the rollers via further presser rollers loaded by springs. Nevertheless, the dirt that is inevitably gathered by the ball during use rapidly degrades the quality of the mechanical coupling, and thus the mouse becomes in a short time far from precise, if not altogether unusable. A further problem is due to the electrical contacts of the encoders, which are subject to wear and tend to oxidize. Hence, in practice, a mouse based upon the conventional ball system can preserve good characteristics of precision only for a short time.
More recently, mice with optical detection of the motion have been proposed. In this case, the motion transducer includes a light source, which illuminates a portion of the sliding surface of the mouse, and an optical sensor coupled thereto. The optical sensor is adapted to reconstruct the relative displacement of the mouse with respect to the sliding surface starting from the brightness variations of the illuminated portion. This solution does not present the drawbacks of mechanical mice, and, moreover, the most recent developments have enabled the use of optical mice on any type of surface. However, also optical mice have limitations, principally on account of the high power dissipation. In fact, the light source that illuminates the sliding surface must be always active, even during periods in which the mouse is not being used. It should be noted that, even in situations in which the mouse is exploited very intensively, the periods of inoperativeness are by far more prevalent. In other words, then, the power consumption of optical mice is constantly high and, most of the time, the power used is not exploited for useful functions. This drawback is particularly severe in battery-supplied mice, such as wireless mice, which are spreading in an increasingly rapid way, because it markedly limits the autonomy of the device. A further disadvantage of movement transducers of an optical type is the high manufacturing cost.
Also known are mice that use inertial sensors with two independent detection axes as motion transducers, which are also referred to as inertial mice. The inertial sensors are fixed to the shell of the mouse and issue acceleration signals according to the two detection axes when the mouse is moved by the user. The acceleration signals are integrated in time a first time and a second time, for calculating the mouse velocity and position, respectively, in an absolute frame of reference fixed with respect to the sliding surface. For various reasons, however, also inertial mice are very far from precise. In the first place, the acceleration signals generated by the inertial sensors are inevitably affected by unknown offsets, which are due to the control and reading circuits of the inertial sensors. Since the acceleration signals must be integrated and, obviously, the mean value of the offset is non-zero, the error caused by the offsets results in a fictitious velocity which increases linearly in time. Furthermore, the integration envisages estimation of at least one value of velocity (for each detection axis) with respect to the absolute frame of reference. As occurs for the offsets, also the absolute velocity estimation errors are amplified by the integration, and consequently the estimation of the instantaneous velocity of the mouse is affected by an imprecision that increases in time. A further factor of imprecision derives from the fact that inertial sensors detect also the force of gravity. If the detection axes are not perfectly horizontal, the acceleration signals include, in addition to the components due to the motion of the mouse, also a component correlated to the force of gravity, which, in practice, has the same effect as the offsets and as the errors of estimation of the initial value of velocity.